Concept drawings (also referred to as concept sketches) are two-dimensional representations of objects which are used by artists and designers to convey aspects of the objects' three-dimensional shapes.
An examples of a concept drawing 10 is shown in FIG. 1. Concept drawing 10 is a drawing of a sports bag. The actual sports bag may be referred to herein as the object underlying concept drawing 10. Concept drawings 10 typically include a number of types of lines or curves. Boundary curves 11 demarcate parts of the object underlying concept drawings 10. Boundary curves 11 may include smooth silhouette curves (or, for brevity, silhouettes) 12 and sharp boundary curves (also referred to as, sharp boundaries, boundaries or trim curves) 14. Silhouettes 12 may demarcate transitions between visible and hidden parts of a smooth surface and may be dependent on the views depicted in concept drawings 10. In mathematical terms, silhouettes 12 may demarcate parts of concept drawings 10 where the surface normal of the objects underlying the concept drawings 10 transitions from facing toward the viewer to facing away from the viewer. Trim curves 14 can demarcate ends of surfaces, junctions between different parts of objects, sharp bends on surfaces, discontinuous transitions and/or the like. In some views and/or for some objects boundary curves 11 can be both silhouettes 12 and trim curves 14 or such silhouettes 12 and trim curves 14 may overlap.
In addition to boundary curves 11, artists and designers typically use cross-section curves (or, for brevity, cross-sections) 16 which aid in the drawing of concept drawings 10 and in the viewer's interpretation of the three-dimensional appearance of objects underlying concept drawings 10. The intersections of cross-sections 16 may be referred to as cross-hairs 18 or cross-section intersections 18. When drawn in concept drawings 10, cross-sections 16 are only two-dimensional. However, cross-sections 16 are used to convey three-dimensional information by depicting intersections of imagined three-dimensional surfaces with three-dimensional planes. Cross-sections 16 and cross-hairs 18 carry important perceptual information for viewers and are typically drawn at or near locations where they maximize (or at least improve) the clarity of concept drawings 10.
While not expressly shown in the particular case of the illustrative concept drawings 10 shown in FIG. 1, concept drawings 10 may also incorporate hidden curves, which may be used to show features that are not visible from the viewer's perspective or are otherwise obscured from the viewer. Such hidden curves may also be characterized as silhouettes, trim curves or cross-sections. In some circumstances curves used in concept drawings need not be any of the aforementioned types of curves.
Concept drawings 10 may be drawn using a computer or otherwise input into a computer. Computers may make use of a variety of suitable representations of concept drawings 10 and there underlying curves. By way of non-limiting example, the Cartesian (x,y) coordinates of a curve in a concept drawing 10 may be represented parametrically in a computer according to:Q(u)=(x(u),y(u))  (1)where u is known as the parameter of the representation. It is typical, but not necessary, that the parameter u be in the range [0,1]—i.e. 0<=u<=1. Non-limiting examples of parametric curve representations include polynomial representations of the form:x(u)=Σk=0nakuk y(u)=Σk=0nbkuk  (2)where n is the order of the polynomial representation and the polynomials are defined by the coefficients ak, bk. It is common, but not necessary, that the degree n of a polynomial representation is selected to be n=3 (referred to as a cubic representation). Non-limiting examples of particular types of polynomial curve representations include Hermite curve representations, Bezier curve representations and/or the like. Such curve representations may be characterized by corresponding control points which determine the shape of the curve.
More complex curves may be represented by piecewise polynomial representations, wherein the complex curves are divided into segments and each segment is represented by a corresponding polynomial representation. It is common in computer graphics to refer to such a complex curve as a path or a spline and to the individual segments as curves. The representation corresponding to each segment of a spline may be characterized by a set of observable control points. Such control points can be manipulated to control corresponding manipulation of the segment. In the case of Bezier representations, the control points at the ends of each segment are on the end of the segment and each segment shares a control point with each of its neighboring segments. Smoothness of the spline may be provided by ensuring that the control point at which two adjacent segments meet is on a line between the two adjacent control points.
Other forms of curve representations used in computer graphics and which could be used to represent the curves of a concept drawing include, without limitation, B-spline representations, other non-uniform rational basis spline (NURBS) representations and/or the like.
Another form of curve representation used in computer graphics and which could be used to represent the curves of a concept drawing is known as a polyline representation (also referred to as a polygonal chain representation), where the curve is divided into sequence of points (referred to as vertices) and the curve comprises a plurality of line segments that connect consecutive vertices.
There exists a number of techniques for estimating three-dimensional information based on two-dimensional concept drawings of objects. For instance, such techniques may depend on the order in which curves are drawn, and/or may not be suitable for recovering 3D shape information from existing 2D sketches. Other techniques attempt to shade 2D drawings to better convey 3D characteristics, but may be insufficient to generate a consistent 3D model from a 2D input drawing. Still other techniques depend on multiple views, by which users may incrementally define 3D models by adding to existing surfaces. Some techniques may be directed towards converting substantially rectilinear (e.g. “boxy”) shapes and may have difficulties converting 2D sketches illustrating smooth free-form shapes into 3D representations. Some techniques may have difficulties in converting hand-drawn sketches generally, as such sketches may contain inaccuracies.
Given a two-dimensional concept drawing, there is a general desire to estimate a three-dimensional computer representation (and/or other three-dimensional information) corresponding to the object(s) underlying the concept drawing. Converting a 2D drawing into an accurate 3D model remains a significant challenge in the field of computer graphics. Computers are not naturally capable of extrapolating 3D information from 2D images, and so conversion techniques are required to generate 3D computer representations based on 2D images. Existing techniques struggle to provide accurate results, particularly when the input image is a 2D hand-drawn sketch, and/or impose other limitations on the conversion process. Accordingly, this is an area where there remains substantial potential for the functionality of computers to be improved and for the field of computer graphics to be advanced.
The foregoing examples of the related art and limitations related thereto are intended to be illustrative and not exclusive. Other limitations of the related art will become apparent to those of skill in the art upon a reading of the specification and a study of the drawings.